package com.hockeo.server.rpc.command;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import com.hockeo.server.rpc.AuthenticationType;

/**
 * Specifies options for classes that implement {@link ICommandExecutor}.
 *
 * @version $Id$
 * @author jjanke
 */
@Retention( RetentionPolicy.RUNTIME )
@Target( { ElementType.TYPE } )
public @interface CommandExecutionOptions
{
  /**
   * Specifies what kind of authentication should be enforced before executing the
   * command. By default {@link AuthenticationType#NONE} will be enforced.
   */
  AuthenticationType authType() default AuthenticationType.NONE;
}
